package br.gov.mi.corporativo.dominio.comum;

// default package
// Generated 12/11/2014 10:19:36 by Hibernate Tools 4.0.0

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.Immutable;

/**
 * PessoaTipoInteresse generated by hbm2java
 */
@Entity @Immutable
@Table(schema="DES_COMUM",name = "PESSOA_TIPO_INTERESSE")
public final class PessoaTipoInteresse implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 7245803585870615743L;
	
	@Id
	@Column(name = "ID_PESSOA_TIPO_INTERESSE", unique = true, nullable = false, precision = 22, scale = 0)
	private Long idPessoaTipoInteresse;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ID_PESSOA", nullable = false)
	private Pessoa pessoa;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ID_TIPO_INTERESSE", nullable = false)
	private TipoInteresse tipoInteresse;
	
	@Temporal(TemporalType.DATE)
	@Column(name = "DT_INICIO", nullable = false, length = 7)
	private Date dtInicio;
	
	@Temporal(TemporalType.DATE)
	@Column(name = "DT_TERMINO", length = 7)
	private Date dtTermino;
	
	@Column(name = "CS_SITUACAO_INTERESSE", nullable = false, length = 1)
	private String csSituacaoInteresse;

	public PessoaTipoInteresse() {
	}

	public PessoaTipoInteresse(Long idPessoaTipoInteresse, Pessoa pessoa,
			TipoInteresse tipoInteresse, Date dtInicio,
			String csSituacaoInteresse) {
		this.idPessoaTipoInteresse = idPessoaTipoInteresse;
		this.pessoa = pessoa;
		this.tipoInteresse = tipoInteresse;
		this.dtInicio = dtInicio;
		this.csSituacaoInteresse = csSituacaoInteresse;
	}

	public PessoaTipoInteresse(Long idPessoaTipoInteresse, Pessoa pessoa,
			TipoInteresse tipoInteresse, Date dtInicio, Date dtTermino,
			String csSituacaoInteresse) {
		this.idPessoaTipoInteresse = idPessoaTipoInteresse;
		this.pessoa = pessoa;
		this.tipoInteresse = tipoInteresse;
		this.dtInicio = dtInicio;
		this.dtTermino = dtTermino;
		this.csSituacaoInteresse = csSituacaoInteresse;
	}

	
	public Long getIdPessoaTipoInteresse() {
		return this.idPessoaTipoInteresse;
	}

	
	public Pessoa getPessoa() {
		return this.pessoa;
	}

	
	public TipoInteresse getTipoInteresse() {
		return this.tipoInteresse;
	}

	
	public Date getDtInicio() {
		return this.dtInicio;
	}

	
	public Date getDtTermino() {
		return this.dtTermino;
	}

	
	public String getCsSituacaoInteresse() {
		return this.csSituacaoInteresse;
	}

}
